#include<bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N=100005;

int n;
LL a[N];
LL m;
int main(){
	LL l=0,r=LLONG_MAX;
	scanf("%d%lld",&n,&m);
	LL l1,r1;
	LL c;
	for(int i=1;i<=n;i++){
		scanf("%lld",&a[i]);
		c=a[i]*i;
		if(m%c==0){
			l1=m/c;
		}
		else{
			l1=m/c+1;
		}
		l=max(l,l1);
		//
		c=i*(a[i]-1);
		if(c==0){
			r1=LLONG_MAX;
		}
		else if(m%c==0){
			r1=m/c-1;
		}
		else{
			r1=m/c;
		}
		r=min(r,r1);
	}
	if(r==LLONG_MAX){
		printf("xiaogougege");
	}
	else if(l>r){
		printf("0");
	}
	else printf("%lld",r-l+1);
	return 0;
}
